11 research outputs found

    Synthesis of correct-by-construction behavior trees

    Get PDF
    In this paper we study the problem of synthesizing correct-by-construction Behavior Trees (BTs) controlling agents in adversarial environments. The proposed approach combines the modularity and reactivity of BTs with the formal guarantees of Linear Temporal Logic (LTL) methods. Given a set of admissible environment specifications, an agent model in form of a Finite Transition System and the desired task in form of an LTL formula, we synthesize a BT in polynomial time, that is guaranteed to correctly execute the desired task. To illustrate the approach, we present three examples of increasing complexity

    Conditional behavior trees: Definition, executability, and applications

    Get PDF
    Behavior Trees (BTs) are gaining acceptance in robotics to specify action policies at the deliberative level. Their advantages include modularity, ease of use and increasing tool support. In this paper, we define Conditional Behavior Trees (CBTs) as an extension of BTs wherein actions are decorated considering pre-and post-conditions. CBTs improve on basic BTs in that they enable monitoring the execution of single actions by checking pre-and post-conditions, respectively. Since there might exist action sequences wherein some preconditions are violated, CBT executability may depend on the success/failure of specific actions. We developed an encoding of CBT executability into satisfiability of propositional formulas to be checked off-line in a publicly-available tool that computes the encoding for generic CBTs. For the kind of application scenarios and related behavior specifications that we consider, we show that our approach is effective and yields formal guarantees about the executability of deliberative policies designed as CBTs

    Synthesis of reactive control protocols for switch electrical power systems for commercial application with safety specifications

    Get PDF
    This paper presents a method for the reactive synthesis of fault-tolerant optimal control protocols for a finite deterministic discrete event system subject to safety specifications. A Deterministic Finite State Machine (DFSM) and Behavior Tree (BT) were used to model the system. The synthesis procedure involves formulating the policy problem as a shortest path dynamic programming problem. The procedure evaluates all possible states when applied to the DFSM, or over all possible actions when applied to the BT. The resulting strategy minimizes the number of actions performed to meet operational objectives without violating safety conditions. The effectiveness of the procedure on DFSMs and BTs is demonstrated through three examples of switched electrical power systems for commercial application and analyzed using run-time complexity analysis. The results demonstrated that for large order system BTs provided a tractable model to synthesize an optimal control policy

    Formalizing the Execution Context of Behavior Trees for Runtime Verification of Deliberative Policies

    Get PDF
    In this paper, we enable automated property verification of deliberative components in robot control architectures. We focus on formalizing the execution context of Behavior Trees (BTs) to provide a scalable, yet formally grounded, methodology to enable runtime verification and prevent unexpected robot behaviors. To this end, we consider a message-passing model that accommodates both synchronous and asynchronous composition of parallel components, in which BTs and other components execute and interact according to the communication patterns commonly adopted in robotic software architectures. We introduce a formal property specification language to encode requirements and build runtime monitors. We performed a set of experiments, both on simulations and on the real robot, demonstrating the feasibility of our approach in a realistic application and its integration in a typical robot software architecture. We also provide an OS-level virtualization environment to reproduce the experiments in the simulated scenario

    Towards Architecture-wide Analysis, Verification, and Validation for Total System Stability During Goal-Seeking Space Robotics Operations

    No full text
    In this paper we discuss the beginnings of an attempt to define and analyze the stability of an entire modular robotic system architecture – one which includes a three-tier (3T) layer breakdown of capabilities, with symbolic, deterministic planning at the highest level. We approach the problem from the standpoint of a control theory outlook, and try to formalize the issues that result from trying to quantitatively characterize the overall performance of a well-defined system without a need for exhaustive testing. We start by discussing the concept of bounded-input bounded-output stability, giving examples where the technique might not be sufficient to guarantee what we term “total system stability” due to complications associated with the levels of abstraction between the modules and components that are being chained together in the architecture. We then go on to discuss necessary conditions that may fall out of this naturally as a result. We further try to better-define the input and output constraints needed to guarantee total system stability, using an assumption-guarantee-like contractual framework that sits alongside the architecture; the requirements then may have influence across multiple modules, in order to keep consistency. We also discuss how the structure of the architectural modules may help or hinder the process of capability characterization and performance analysis of each module and a given architecture configuration as a whole. We then discuss two overlapping methods that, combined, should allow us to analyze the effectiveness of the architecture, and help towards verification and validation of both the components and the system as a whole. Demonstrative examples are given using a specific architectural implementation called the Resilient Spacecraft Executive. In future work, we hope to define both necessary and sufficient conditions for total system stability across such a system architecture for robotics useQC 20201124</p

    Towards Architecture-wide Analysis, Verification, and Validation for Total System Stability During Goal-Seeking Space Robotics Operations

    No full text
    In this paper we discuss the beginnings of an attempt to define and analyze the stability of an entire modular robotic system architecture - one which includes a three-tier (3T) layer breakdown of capabilities, with symbolic, deterministic planning at the highest level. We approach the problem from the standpoint of a control theory outlook, and try to formalize the issues that result from trying to quantitatively characterize the overall performance of a well-defined system without a need for exhaustive testing. We start by discussing the concept of bounded-input bounded-output stability, giving examples where the technique might not be sufficient to guarantee what we term "total system stability" due to complications associated with the levels of abstraction between the modules and components that are being chained together in the architecture. We then go on to discuss necessary conditions that may fall out of this naturally as a result. We further try to better-define the input and output constraints needed to guarantee total system stability, using an assumption-guarantee-like contractual framework that sits alongside the architecture; the requirements then may have influence across multiple modules, in order to keep consistency. We also discuss how the structure of the architectural modules may help or hinder the process of capability characterization and performance analysis of each module and a given architecture configuration as a whole. We then discuss two overlapping methods that, combined, should allow us to analyze the effectiveness of the architecture, and help towards verification and validation of both the components and the system as a whole. Demonstrative examples are given using a specific architectural implementation called the Resilient Spacecraft Executive. In future work, we hope to define both necessary and sufficient conditions for total system stability across such a system architecture for robotics use

    Evolving Behaviour Tree Structures Using Grammatical Evolution

    Get PDF
    Behaviour Trees are control structures with many applications in computer science, including robotics, control systems, and computer games. They allow the specification of controllers from very broad behaviour definitions (close to the root of the tree) down to very specific technical implementations (near the leaves); this allows them to be understood and extended by both behaviour designers and technical programmers. This chapter describes the process of applying Grammatical Evolution (GE) to evolve Behaviour Trees for a real-time video-game: the Mario AI Benchmark. The results obtained show that these structures are quite amenable to artificial evolution using GE, and can provide a good balance between long-term (pathfinding) and short-term (reactiveness to hazards and power-ups) planning within the same structure

    Towards architecture-wide analysis, verification, and validation for total system stability during goal-seeking space robotics operations

    No full text
    In this paper we discuss the beginnings of an attempt to define and analyze the stability of an entire modular robotic system architecture - one which includes a three-tier (3T) layer breakdown of capabilities, with symbolic, deterministic planning at the highest level. We approach the problem from the standpoint of a control theory outlook, and try to formalize the issues that result from trying to quantitatively characterize the overall performance of a well-defined system without a need for exhaustive testing. We start by discussing the concept of bounded-input bounded-output stability, giving examples where the technique might not be sufficient to guarantee what we term “total system stability” due to complications associated with the levels of abstraction between the modules and components that are being chained together in the architecture. We then go on to discuss necessary conditions that may fall out of this naturally as a result. We further try to better-define the input and output constraints needed to guarantee total system stability, using an assumption-guarantee-like contractual framework that sits alongside the architecture; the requirements then may have influence across multiple modules, in order to keep consistency. We also discuss how the structure of the architectural modules may help or hinder the process of capability characterization and performance analysis of each module and a given architecture configuration as a whole. We then discuss two overlapping methods that, combined, should allow us to analyze the effectiveness of the architecture, and help towards verification and validation of both the components and the system as a whole. Demonstrative examples are given using a specific architectural implementation called the Resilient Spacecraft Executive. In future work, we hope to define both necessary and sufficient conditions for total system stability across such a system architecture for robotics use.QC 20170216</p

    Behavior trees as a control architecture in the automatic modular design of robot swarms

    No full text
    Previous research has shown that automatically combining low-level behaviors into a probabilistic finite state machine produces control software that crosses the reality gap satisfactorily. In this paper, we explore the possibility of adopting behavior trees as an architecture for the control software of robot swarms. We introduce Maple: an automatic design method that combines preexisting modules into behavior trees. To highlight the potential of this control architecture, we present robot experiments in which we compare Maple with Chocolate and EvoStick on two missions: foraging and aggregation. Chocolate and EvoStick are two previously published automatic design methods. Chocolate is a modular method that generates probabilistic finite state machines and EvoStick is a traditional evolutionary robotics method. The results of the experiments indicate that behavior trees are a viable and promising architecture to automatically generate control software for robot swarms.info:eu-repo/semantics/publishe
    corecore